package com.iptv.grape.jss.mgr;

import android.webkit.WebView;

import org.json.JSONException;
import org.json.JSONObject;

public class CallJsMgr {

    /**
     //	 *     每次Activity进入时重新加载数据
     //	 * @param mWebView
     //	 */
	public static void refreshData(WebView mWebView){
		if(mWebView == null){
			return;
		}

		JSONObject jsonObject = new JSONObject();
		try {
			jsonObject.put("tag", "refresh");
			String info = jsonObject.toString();
			callJson(mWebView,info);
		} catch (JSONException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	public static void dealBackEvent(WebView mWebView){
		if(mWebView == null){
			return;
		}

		JSONObject jsonObject = new JSONObject();
		try {
			jsonObject.put("tag", "keybakEvent");
			String info = jsonObject.toString();
			callJson(mWebView,info);
		} catch (JSONException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		//修改keybackEvent名字， 做兼容处理
		JSONObject jsonObject2 = new JSONObject();
		try {
			jsonObject2.put("tag", "keybackEvent");
			String info = jsonObject2.toString();
			callJson(mWebView,info);
		} catch (JSONException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	/**
	 *    发送播放器的状态
	 * @param mWebView
	 */
	public static void sendVodState(WebView mWebView,String curPlayTime,String allTime){
		if(mWebView == null){
			return;
		}

		JSONObject jsonObject = new JSONObject();
		try {
			jsonObject.put("tag", "vodPreprePlay");
			jsonObject.put("allTime", allTime);
			jsonObject.put("curPlayTime", curPlayTime);
			String info = jsonObject.toString();
			callJson(mWebView,info);
		} catch (JSONException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	public static void sendPlayEnd(WebView mWebView){
		if(mWebView == null){
			return;
		}

		JSONObject jsonObject = new JSONObject();
		try {
			jsonObject.put("tag", "playEnd");
			String info = jsonObject.toString();
			callJson(mWebView,info);
		} catch (JSONException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
////	static String seenVodData = "";
//	public static void sendSeenVodData(final WebView mWebView,String dramaId){
//		if(mWebView == null){
//			return;
//		}
//		if(TextUtils.isEmpty(dramaId)){
//			//最近观看
//			List<TvVodProgram> mList= BrlfPlayerDbUtils.create().getLastSeenVodProgramList();
//			System.out.println("#####sendSeenVodData--list:"+mList.size());
//			final String seenVodData = new Gson().toJson(mList);
//			mWebView.post(new Runnable() {
//
//					@Override
//					public void run() {
//						// TODO Auto-generated method stub
//						mWebView.loadUrl("javascript:getSeenVodData(" + seenVodData + ")");
//					}
//				});
//		}else{
//			//单个详情资产
//			System.out.println("###单个详情");
//			TvVodProgram tvVodProgram = BrlfPlayerDbUtils.create().getLastSeenVodProgramByDramaId(dramaId);
//			if(tvVodProgram != null){
//				JSONObject jsonObject = new JSONObject();
//				try {
//					jsonObject.put("tag", "seenVodData");
//					jsonObject.put("dramaId",tvVodProgram.getDramaId());
//					jsonObject.put("dramaName", tvVodProgram.getDramaName());
//					jsonObject.put("lastCount", tvVodProgram.getCurPlayCount());
//					jsonObject.put("playLongth", tvVodProgram.getCurPlayTimeLength());
//					jsonObject.put("provide", tvVodProgram.getcProvider());
//					final String info = jsonObject.toString();
//					mWebView.post(new Runnable() {
//
//						@Override
//						public void run() {
//							// TODO Auto-generated method stub
//							mWebView.loadUrl("javascript:HybirdCallBackInterface.callByJava('" + info + "')");
//						}
//					});
//
//				} catch (JSONException e) {
//					// TODO Auto-generated catch block
//					e.printStackTrace();
//				}
//			}
//
//		}
//
//	}
//
//	public static void sendSaveData(final WebView mWebView){
//		if(mWebView == null){
//			return;
//		}
//		final String saveData = new Gson().toJson(Glober.tvSaveChannels);
//		mWebView.post(new Runnable() {
//
//			@Override
//			public void run() {
//				// TODO Auto-generated method stub
//				mWebView.loadUrl("javascript:getSaveData(" + saveData + ")");
//			}
//		});
//
//	}

	/**
	 * 播放错误 (国里20170412 添加）
	 * @param mWebView
	 */
	public static void sendPlayError(WebView mWebView) {
		if(mWebView == null){
			return;
		}

		JSONObject jsonObject = new JSONObject();
		try {
			jsonObject.put("tag", "playError");
			String info = jsonObject.toString();
			callJson(mWebView,info);
		} catch (JSONException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

    private static void callJson(WebView mWebView,String json){
            mWebView.loadUrl("javascript:HybirdCallBackInterface.callByJava('" + json + "')");
    }
}
